package cc.wfu.domain.order.model.entity;

import cc.wfu.domain.order.model.valobj.OrderStateVO;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.Date;

/**
 * @Author: jia-qiang ljq1024.cc
 * @desc: 商品订单实体
 * @Date: 2024-06-05-21:28
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class ProductOrderEntity {

    /**
     * 用户ID
     */
    private String userId;

    /**
     * sku
     */
    private Long sku;

    /**
     * 商品ID
     */
    private Long productId;

    /**
     * 商品名称
     */
    private String productName;

    /**
     * 订单ID
     */
    private String orderId;

    /**
     * 订单总金额（非实付金额）
     */
    private BigDecimal totalAmount;

    /**
     * 下单时间
     */
    private LocalDateTime orderTime;

    /**
     * 订单状态
     */
    private OrderStateVO state;

    /**
     *  业务防重ID - 外部穿透的，确保幂等
     */
    private String outBusinessNo;
}
